// Emoji拖尾效果
const emojis = [
    '😊', '😂', '🤣', '❤️', '🔥', '⭐', '🎉', '🍕', '🐱', '🚀', // 常用表情
    '🐶', '🐼', '🦄', '🐧', '🐙', '🦋', '🌻', '🍀', '🌈', '🌙', // 动物与自然
    '🍎', '🍉', '🍇', '🍔', '🍟', '🍩', '🍭', '🍫', '🍿', '🍹', // 食物与饮料
    '⚽', '🏀', '🏈', '🎾', '🏓', '🎮', '🎲', '🎸', '🎧', '🎨', // 活动与爱好
    '🚗', '✈️', '🚀', '🚁', '🚢', '🚲', '🛴', '🏍️', '🚒', '🚑', // 交通工具
    '🏠', '🏖️', '🏝️', '🏕️', '🏰', '🌋', '🏞️', '🌅', '🌄', '🌠', // 地点与风景
    '🎁', '🎈', '🎊', '🎂', '🕶️', '👑', '💍', '👠', '👟', '🧦', // 物品与服饰
    '👻', '🤖', '👽', '👾', '💀', '☠️', '👹', '👺', '🤡', '🎃', // 奇幻与节日
    '💡', '📱', '💻', '🖥️', '🖨️', '⌚', '📷', '🎥', '📺', '📻', // 科技与设备
    '📚', '✏️', '📝', '📅', '📌', '📍', '🔍', '🔎', '💼', '📂'  // 办公与学习
];

// 记录鼠标位置
let lastX = 0;
let lastY = 0;
let lastEmojiTime = 0; // 记录上一次生成emoji的时间

// Emoji拖尾效果
document.addEventListener('mousemove', function(event) {
    const currentX = event.pageX;
    const currentY = event.pageY;

    // 计算鼠标移动距离
    const distance = Math.sqrt((currentX - lastX) ** 2 + (currentY - lastY) ** 2);

    // 如果移动距离过大，限制拖尾长度
    if (distance > 100) { // 100px为最大拖尾长度
        lastX = currentX;
        lastY = currentY;
        return;
    }

    // 控制emoji生成频率（每18毫秒生成一个）
    const currentTime = Date.now();
    if (currentTime - lastEmojiTime < 18) {
        return;
    }
    lastEmojiTime = currentTime;

    // 创建emoji
    const emoji = document.createElement('div');
    emoji.classList.add('emoji-trail');
    emoji.textContent = emojis[Math.floor(Math.random() * emojis.length)]; // 随机选择emoji
    emoji.style.left = `${currentX}px`;
    emoji.style.top = `${currentY}px`;
    emoji.style.transform = 'scale(1.2)'; // 初始大小
    document.body.appendChild(emoji);

    // 逐渐消失效果
    setTimeout(() => {
        emoji.style.opacity = '0';
        emoji.style.transform = 'scale(0.5)'; // 消失时变得更小
    }, 50); // 50毫秒后开始消失

    // 移除emoji
    setTimeout(() => {
        emoji.remove();
    }, 400); // 400毫秒后移除元素

    // 更新上一次鼠标位置
    lastX = currentX;
    lastY = currentY;
});